home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / ai / fuzzy / listing.b < prev    next >
Text File  |  1986-11-29  |  4KB  |  83 lines

  1.  
  2. -------------------------------------------------------------------------------
  3. --                                                                           --
  4. --  Library Unit:  listing  --  Insert errors and messages into listing      --
  5. --                                                                           --
  6. --  Author:  Bradley L. Richards                                             --
  7. --                                                                           --
  8. --     Version     Date     Notes . . .                                      --
  9. --    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -    --
  10. --       1.0     6 Feb 86   Initial Version                                  --
  11. --       1.1    25 Feb 86   Minor revisions to error messages                --
  12. --       1.2     4 Mar 86   Added 2 character lookahead (required to         --
  13. --                            differentiate between the Ada ellipse and      --
  14. --                            a floating point number).                      --
  15. --       1.3    22 May 86   Split message routines from io routines to       --
  16. --                            limit visibility for higher routines           --
  17. --       2.0    20 Jun 86   Added start and stop routines                    --
  18. --       2.1    13 Jul 86   Split into separate spec and body files          --
  19. --    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -    --
  20. --                                                                           --
  21. --  Library units used:  io                                                  --
  22. --                                                                           --
  23. --  Description:  This package inserts errors, warnings, and notes into      --
  24. --     the listing file.  It tracks the numbers of messages of each type     --
  25. --     which are inserted in the listing; these counts may be used, for      --
  26. --     instance, to tell the user how many source errors were found.         --
  27. --        The routines in this package all have a "pointer_flag" which       --
  28. --     is used to tell the "io" package whether to draw a pointer to the     --
  29. --     "current character" in the program being parsed.                      --
  30. --                                                                           --
  31. -------------------------------------------------------------------------------
  32. --                                                                           --
  33. --                              Package Body                                 --
  34. --                                                                           --
  35. -------------------------------------------------------------------------------
  36.  
  37. package body listing is
  38.  
  39.   procedure error( char_ptr : boolean; message : string ) is
  40.     begin
  41.       if char_ptr then
  42.     print_pointer;
  43.       end if;
  44.       lput("Error -- "); lput_line(message);
  45.       number_of_errors := number_of_errors + 1;
  46.     end error;
  47.  
  48.  
  49.   procedure note( char_ptr : boolean; message : string ) is
  50.     begin
  51.       if char_ptr then
  52.     print_pointer;
  53.       end if;
  54.       lput("Note -- "); lput_line(message);
  55.       number_of_notes := number_of_notes + 1;
  56.     end note;
  57.  
  58.  
  59.   procedure start_listing is
  60.     begin
  61.       number_of_errors := 0;
  62.       number_of_notes := 0;
  63.       number_of_warnings := 0;
  64.     end start_listing;
  65.  
  66.  
  67.   procedure stop_listing is
  68.     begin
  69.       null;
  70.     end;
  71.  
  72.  
  73.   procedure warning( char_ptr : boolean; message : string ) is
  74.     begin
  75.       if char_ptr then
  76.     print_pointer;
  77.       end if;
  78.       lput("Warning -- "); lput_line(message);
  79.       number_of_warnings := number_of_warnings + 1;
  80.     end warning;
  81.  
  82. end listing;
  83.